home *** CD-ROM | disk | FTP | other *** search
/ PC World 2006 July & August / PCWorld_2006-07-08_cd.bin / komunikace / apache / apache_2[1].2.2-win32-x86-no_ssl.msi / Data1.cab / _71B5618846A0EDF07389BEA11E1252BD < prev    next >
Extensible Markup Language  |  2006-01-15  |  28KB  |  549 lines

  1. <?xml version="1.0" encoding="EUC-JP"?>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja"><head><!--
  4.         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  5.               This file is generated from xml source: DO NOT EDIT
  6.         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  7.       -->
  8. <title>Apache Tutorial: CGI ñ╦ñΦñδ╞░┼¬Ñ│Ñ≤Ñ╞Ñ≤Ñ─ - Apache HTTP Ñ╡í╝Ñ╨</title>
  9. <link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
  10. <link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
  11. <link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
  12. <link href="../images/favicon.ico" rel="shortcut icon" /></head>
  13. <body id="manual-page"><div id="page-header">
  14. <p class="menu"><a href="../mod/">ÑΓÑ╕Ñσí╝Ñδ</a> | <a href="../mod/directives.html">Ñ╟ÑúÑ∞Ñ»Ñ╞ÑúÑ╓</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">═╤╕∞</a> | <a href="../sitemap.html">Ñ╡ÑñÑ╚Ñ▐Ñ├Ñ╫</a></p>
  15. <p class="apache">Apache HTTP Ñ╡í╝Ñ╨ Ñ╨í╝Ñ╕ÑτÑ≤ 2.2</p>
  16. <img alt="" src="../images/feather.gif" /></div>
  17. <div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
  18. <div id="path">
  19. <a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP Ñ╡í╝Ñ╨</a> > <a href="http://httpd.apache.org/docs/">Ñ╔Ñ¡ÑσÑßÑ≤Ñ╞í╝Ñ╖ÑτÑ≤</a> > <a href="../">Ñ╨í╝Ñ╕ÑτÑ≤ 2.2</a> > <a href="./">How-To / Ñ┴Ñσí╝Ñ╚ÑΩÑóÑδ</a></div><div id="page-content"><div id="preamble"><h1>Apache Tutorial: CGI ñ╦ñΦñδ╞░┼¬Ñ│Ñ≤Ñ╞Ñ≤Ñ─</h1>
  20. <div class="toplang">
  21. <p><span>Available Languages: </span><a href="../en/howto/cgi.html" hreflang="en" rel="alternate" title="English"> en </a> |
  22. <a href="../ja/howto/cgi.html" title="Japanese"> ja </a> |
  23. <a href="../ko/howto/cgi.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
  24. </div>
  25. <div class="outofdate">This translation may be out of date. Check the
  26.             English version for recent changes.</div>
  27. </div>
  28. <div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#intro">ñ╧ñ╕ñßñ╦</a></li>
  29. <li><img alt="" src="../images/down.gif" /> <a href="#configuring">CGI ñ≥╡÷▓─ñ╣ñδñΦñªñ╦ Apache ñ≥└▀─Ωñ╣ñδ</a></li>
  30. <li><img alt="" src="../images/down.gif" /> <a href="#writing">CGI Ñ╫ÑφÑ░ÑΘÑαñ≥╜±ñ»</a></li>
  31. <li><img alt="" src="../images/down.gif" /> <a href="#troubleshoot">ñ╖ñ½ñ╖íóñ▐ñ└╞░ñ½ñ╩ññ !</a></li>
  32. <li><img alt="" src="../images/down.gif" /> <a href="#behindscenes">╬óñ╟▓┐ñ¼╡»ñ│ñ├ñ╞ñññδñ╬ñ½?</a></li>
  33. <li><img alt="" src="../images/down.gif" /> <a href="#libraries">CGI ÑΓÑ╕Ñσí╝Ñδ/ÑΘÑñÑ╓ÑΘÑΩ</a></li>
  34. <li><img alt="" src="../images/down.gif" /> <a href="#moreinfo">╣╣ñ╩ñδ╛≡╩≤</a></li>
  35. </ul></div>
  36. <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
  37. <div class="section">
  38. <h2><a name="intro" id="intro">ñ╧ñ╕ñßñ╦</a></h2>
  39.     
  40.  
  41.     <table class="related"><tr><th>┤╪╧óÑΓÑ╕Ñσí╝Ñδ</th><th>┤╪╧óÑ╟ÑúÑ∞Ñ»Ñ╞ÑúÑ╓</th></tr><tr><td><ul><li><code class="module"><a href="../mod/mod_alias.html">mod_alias</a></code></li><li><code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code></li></ul></td><td><ul><li><code class="directive"><a href="../mod/mod_mime.html#addhandler">AddHandler</a></code></li><li><code class="directive"><a href="../mod/core.html#options">Options</a></code></li><li><code class="directive"><a href="../mod/mod_alias.html#scriptalias">ScriptAlias</a></code></li></ul></td></tr></table>
  42.  
  43.     <p>CGI (Common Gateway Interface) ñ╧íóѪѺÑ╓Ñ╡í╝Ñ╨ñ¼
  44.     Ñ│Ñ≤Ñ╞Ñ≤Ñ─└╕└«ñ≥ñ╣ñδ│░╔⌠Ñ╫ÑφÑ░ÑΘÑαñ╚╢¿─┤ñ╖ñ╞╞░║εñ╣ñδñ┐ñßñ╬╩²╦íñ≥
  45.     ─Ω╡┴ñ╖ñ╞ñññ▐ñ╣íúñ╜ñ╬Ñ╫ÑφÑ░ÑΘÑαñ╧ñ╖ñ╨ñ╖ñ╨ CGI Ñ╫ÑφÑ░ÑΘÑαñΣ
  46.     CGI Ñ╣Ñ»ÑΩÑ╫Ñ╚ñ╚╕╞ñ╨ñ∞ñ▐ñ╣íúCGI ñ╧íóѪѺÑ╓Ñ╡ÑñÑ╚ñ╦╞░┼¬ñ╩
  47.     Ñ│Ñ≤Ñ╞Ñ≤Ñ─ñ≥├╓ñ»ñ┐ñßñ╬║╟ñΓ┤╩├▒ñ╟░∞╚╠┼¬ñ╩╩²╦íñ╟ñ╣íúñ│ñ╬Ñ╔Ñ¡ÑσÑßÑ≤Ñ╚ñ╧íó
  48.     Apache ÑªÑºÑ╓Ñ╡í╝Ñ╨ñ╟ CGI ñ≥└▀─Ωñ╖íó
  49.     CGI Ñ╫ÑφÑ░ÑΘÑαñ≥╜±ñ¡╗╧ñßñδñ┐ñßñ╬╞■╠τ╜±ñ╚ñ╩ñδñ╟ñ╖ñτñªíú</p>
  50.   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
  51. <div class="section">
  52. <h2><a name="configuring" id="configuring">CGI ñ≥╡÷▓─ñ╣ñδñΦñªñ╦ Apache ñ≥└▀─Ωñ╣ñδ</a></h2>
  53.     
  54.  
  55.     <p>CGI Ñ╫ÑφÑ░ÑΘÑαñ≥└╡ñ╖ñ»╞░║εñ╡ñ╗ñδñ╦ñ╧íóCGI ñ≥╡÷▓─ñ╣ñδñΦñªñ╦
  56.     Apache ñ╬└▀─Ωñ≥╣╘ñª╔¼═╫ñ¼ñóñΩñ▐ñ╣íú
  57.     ñ│ñ∞ñ≥╣╘ñ╩ñªñ┐ñßñ╬╩²╦íñ¼ñññ»ñ─ñ½ñóñΩñ▐ñ╣íú</p>
  58.  
  59.     <h3><a name="scriptalias" id="scriptalias">ScriptAlias</a></h3>
  60.       
  61.  
  62.       <p><code class="directive"><a href="../mod/mod_alias.html#scriptalias">ScriptAlias</a></code>
  63.       Ñ╟ÑúÑ∞Ñ»Ñ╞ÑúÑ╓ñ≥╗╚═╤ñ╖ñ╞íó
  64.       CGI Ñ╫ÑφÑ░ÑΘÑα═╤ñ╬╞├╩╠ñ╩╩╠Ñ╟ÑúÑ∞Ñ»Ñ╚ÑΩñ≥ Apache ñ╦└▀─Ωñ╖ñ▐ñ╣íú
  65.       Apache ñ╧íóñ│ñ╬Ñ╟ÑúÑ∞Ñ»Ñ╚ÑΩ├µñ╬┴┤ñ╞ñ╬Ñ╒ÑíÑñÑδñ≥ CGI
  66.       Ñ╫ÑφÑ░ÑΘÑαñ╟ñóñδñ╚▓╛─Ωñ╖ñ▐ñ╣íú
  67.       ñ╜ñ╖ñ╞íóñ│ñ╬╞├╩╠ñ╩ÑΩÑ╜í╝Ñ╣ñ¼Ñ»ÑΘÑñÑóÑ≤Ñ╚ñ½ñΘ═╫╡ßñ╡ñ∞ñδñ╚íó
  68.       ñ╜ñ╬Ñ╫ÑφÑ░ÑΘÑαñ╬╝┬╣╘ñ≥╗εñ▀ñ▐ñ╣íú</p>
  69.  
  70.       <p><code class="directive"><a href="../mod/mod_alias.html#scriptalias">ScriptAlias</a></code>
  71.       Ñ╟ÑúÑ∞Ñ»Ñ╞ÑúÑ╓ñ╧░╩▓╝ñ╬ñΦñªñ╦╗╚═╤ñ╖ñ▐ñ╣:</p>
  72.  
  73.       <div class="example"><p><code>
  74.         ScriptAlias /cgi-bin/ /usr/local/apache2/cgi-bin/
  75.       </code></p></div>
  76.  
  77.       <p>Ñ╟Ñ╒Ñ⌐ÑδÑ╚░╠├╓ñ╦ Apache ñ≥ÑñÑ≤Ñ╣Ñ╚í╝Ñδñ╖ñ┐ñ╩ñΘñ╨íó
  78.       ñ│ñ╬╬πñ╧Ñ╟Ñ╒Ñ⌐ÑδÑ╚╛⌡┬╓ñ╬ <code>httpd.conf</code>
  79.       └▀─ΩÑ╒ÑíÑñÑδñ╦┤▐ñ▐ñ∞ñ╞ñññ▐ñ╣íú
  80.       <code class="directive"><a href="../mod/mod_alias.html#scriptalias">ScriptAlias</a></code>
  81.       Ñ╟ÑúÑ∞Ñ»Ñ╞ÑúÑ╓ñ╧íóURL ñ╬┴░ñ╦╔╒▓├ñ╣ñδÑ╟ÑúÑ∞Ñ»Ñ╚ÑΩñ≥─Ω╡┴ñ╣ñδ
  82.       <code class="directive"><a href="../mod/mod_alias.html#alias">Alias</a></code>
  83.       Ñ╟ÑúÑ∞Ñ»Ñ╞ÑúÑ╓ñ╚ñ½ñ╩ñΩ╗≈ñ╞ñññ▐ñ╣íú
  84.       <code class="directive">Alias</code> ñ╚ <code class="directive">ScriptAlias</code>
  85.       ñ╧─╠╛∩íó<code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code>
  86.       Ñ╟ÑúÑ∞Ñ»Ñ╚ÑΩ│░ñ╬Ñ╟ÑúÑ∞Ñ»Ñ╚ÑΩñ╬ñ┐ñßñ╦╗╚═╤ñ╡ñ∞ñ▐ñ╣íú
  87.       <code class="directive">Alias</code> ñ╚ <code class="directive">ScriptAlias</code>
  88.       ñ╚ñ╬║╣ñ╧íó<code class="directive">ScriptAlias</code> ñ¼└▄╞¼╝¡ñ╟╗╧ñ▐ñδñ╣ñ┘ñ╞ñ╬
  89.       URL ñ╧ CGI Ñ╫ÑφÑ░ÑΘÑαñ╚ñ▀ñ╩ñ╡ñ∞ñδñ╚ñññª─╔▓├ñ╬░╒╠úñ≥┤▐ñ≤ñ╟ñññδñ│ñ╚ñ╟ñ╣íú
  90.       ╜╛ñ├ñ╞íó╛σ╡¡ñ╬╬πñ╟ñ╧íó<code>/cgi-bin/</code>
  91.       ñ╟╗╧ñ▐ñδÑΩÑ╜í╝Ñ╣ñ╪ñ╬ñóñΘñµñδÑΩѻѿÑ╣Ñ╚ñ╦┬╨ñ╖ñ╞íóÑ╟ÑúÑ∞Ñ»Ñ╚ÑΩ
  92.       <code>/usr/local/apache2/cgi-bin/</code> ñ½ñΘ─≤╢íñ╖íóñ╜ñ∞ñΘñ≥
  93.       CGI Ñ╫ÑφÑ░ÑΘÑαñ╚ñ╖ñ╞░╖ñªñΦñª Apache ñ╦╝¿ñ╖ñ▐ñ╣íú</p>
  94.  
  95.       <p>╬πñ¿ñ╨íóURL <code>http://www.example.com/cgi-bin/test.pl</code>
  96.       ñ¼═╫╡ßñ╡ñ∞ñ┐╛∞╣τíóApache ñ╧ Ñ╒ÑíÑñÑδ
  97.       <code>/usr/local/apache2/cgi-bin/test.pl</code>
  98.       ñ≥╝┬╣╘ñ╖íóñ╜ñ╬╜╨╬╧ñ≥╩╓ñ╣ñ│ñ╚ñ≥╗εñ▀ñ▐ñ╣íú
  99.       ñΓñ┴ñφñ≤íóÑ╒ÑíÑñÑδñ¼┬╕║▀ñ╖íó╝┬╣╘▓─╟╜ñ╟ñóñΩíó╖ΦñßñΘñ∞ñ┐╩²╦íñ╟╜╨╬╧ñ≥╩╓ñ╖ñ▐ñ╣íú
  100.       ñ╜ñªñ╟ñ╩ñ▒ñ∞ñ╨íóApache ñ╧Ñ¿ÑΘí╝ÑßÑ├Ñ╗í╝Ñ╕ñ≥╩╓ñ╖ñ▐ñ╣íú</p>
  101.     
  102.  
  103.     <h3><a name="nonscriptalias" id="nonscriptalias">ScriptAlias Ñ╟ÑúÑ∞Ñ»Ñ╚ÑΩ│░ñ╬ CGI</a></h3>
  104.       
  105.  
  106.       <p>CGI Ñ╫ÑφÑ░ÑΘÑαñ╧íóÑ╗Ñ¡ÑσÑΩÑ╞Ñú╛σñ╬═²═│ñ½ñΘ 
  107.       <code class="directive"><a href="../mod/mod_alias.html#scriptalias">ScriptAlias</a></code>
  108.       ñ╡ñ∞ñ┐Ñ╟ÑúÑ∞Ñ»Ñ╚ÑΩñ╦└⌐╕┬ñ╡ñ∞ñδñ│ñ╚ñ¼ñ╖ñ╨ñ╖ñ╨ñóñΩñ▐ñ╣íúñ│ñ╬╩²╦íñ╦ñΦñΩíó
  109.       CGI Ñ╫ÑφÑ░ÑΘÑαñ≥╗╚═╤ñ╟ñ¡ñδѵí╝Ñ╢ñ≥┤╔═²╝╘ñ¼╕╖ñ╖ñ»└⌐╕µñ╣ñδñ│ñ╚ñ¼ñ╟ñ¡ñ▐ñ╣íú
  110.       ñ╖ñ½ñ╖ñ╩ñ¼ñΘíó┼¼└┌ñ╩Ñ╗Ñ¡ÑσÑΩÑ╞Ñú╗÷┴░┬╨║÷ñ¼ñ╚ñΘñ∞ñδñ╩ñΘñ╨íóCGI
  111.       Ñ╫ÑφÑ░ÑΘÑαñ≥╟ñ░╒ñ╬Ñ╟ÑúÑ∞Ñ»Ñ╚ÑΩñ╟╝┬╣╘ñ╟ñ¡ñ╩ñññΦñªñ╦ñ╣ñδ═²═│ñ╧ñóñΩñ▐ñ╗ñ≤íú
  112.       ╬πñ¿ñ╨íóѵí╝Ñ╢ñ╦ <code class="directive"><a href="../mod/mod_userdir.html#userdir">UserDir</a></code>
  113.       Ñ╟ÑúÑ∞Ñ»Ñ╞ÑúÑ╓ñ╟╚αñΘñ╬Ñ█í╝ÑαÑ╟ÑúÑ∞Ñ»Ñ╚ÑΩ╟█▓╝ñ╦ѪѺÑ╓Ñ│Ñ≤Ñ╞Ñ≤Ñ─ñ≥╗²ñ┐ñ╗ñ┐ñññ╚ñ╖ñ▐ñ╣íú
  114.       ñΓñ╖íó╚αñΘñ¼ CGI Ñ╫ÑφÑ░ÑΘÑαñ≥╗²ñ─ñ│ñ╚ñ≥╦╛ñ≤ñ╟ñññ╞ñΓíóÑßÑñÑ≤ñ╬
  115.       <code>cgi-bin</code> Ñ╟ÑúÑ∞Ñ»Ñ╚ÑΩñ╪ñ╬ÑóÑ»Ñ╗Ñ╣ñ¼ñ╟ñ¡ñ╩ññ╛∞╣τíó
  116.       CGI Ñ╫ÑφÑ░ÑΘÑαñ≥╝┬╣╘ñ╣ñδñ│ñ╚ñ¼ñ╟ñ¡ñδ┬╛ñ╬╛∞╜Ωñ¼╔¼═╫ñ╦ñ╩ñΩñ▐ñ╣íú</p>
  117.  
  118.       <p>╟ñ░╒ñ╬Ñ╟ÑúÑ∞Ñ»Ñ╚ÑΩñ╟ CGI ñ╬╝┬╣╘ñ≥╡÷▓─ñ╣ñδñ╦ñ╧╞≤├╩│¼ñ╬└▀─Ωñ¼╔¼═╫ñ╟ñ╣íú
  119.       ñ▐ñ║íó<code class="directive"><a href="../mod/mod_mime.html#addhandler">AddHandler</a></code> ñΣ <code class="directive"><a href="../mod/core.html#sethandler">SetHandler</a></code> Ñ╟ÑúÑ∞Ñ»Ñ╞ÑúÑ╓ñ╦ñΦñ├ñ╞
  120.       <code>cgi-script</code> Ñ╧Ñ≤Ñ╔ÑΘñ¼▓─╟╜ñ╦ñ╩ñ├ñ╞ñññδ╔¼═╫ñ¼ñóñΩñ▐ñ╣íú
  121.       ╝íñ╦íó<code class="directive"><a href="../mod/core.html#options">Options</a></code> Ñ╟ÑúÑ∞Ñ»Ñ╞ÑúÑ╓ñ╟
  122.       <code>ExecCGI</code> ñ¼╗╪─Ωñ╡ñ∞ñ╞ñññ╩ñ▒ñ∞ñ╨ñ╩ñΩñ▐ñ╗ñ≤íú</p>
  123.     
  124.  
  125.     <h3><a name="options" id="options">CGI ñ╬╝┬╣╘ñ≥▓─╟╜ñ╦ñ╣ñδñ┐ñßñ╦ Options ñ≥╠└╝¿┼¬ñ╦╗╚═╤ñ╣ñδ</a></h3>
  126.       
  127.  
  128.       <p>Ñ╡í╝Ñ╨ñ╬ÑßÑñÑ≤ñ╬└▀─ΩÑ╒ÑíÑñÑδ├µñ╟ <code class="directive"><a href="../mod/core.html#options">Options</a></code>
  129.       Ñ╟ÑúÑ∞Ñ»Ñ╞ÑúÑ╓ñ≥╠└╝¿┼¬ñ╦╗╚═╤ñ╣ñδñ│ñ╚ñ╟íó╞├─Ωñ╬Ñ╟ÑúÑ∞Ñ»Ñ╚ÑΩ╟█▓╝ñ╟
  130.       CGI ñ╬╝┬╣╘ñ≥╡÷▓─ñ╣ñδñΦñªñ╦╗╪─Ωñ╣ñδñ│ñ╚ñ¼ñ╟ñ¡ñ▐ñ╣:</p>
  131.  
  132.       <div class="example"><p><code>
  133.         <Directory /usr/local/apache2/htdocs/somedir><br />
  134.         <span class="indent">
  135.           Options +ExecCGI<br />
  136.         </span>
  137.         </Directory>
  138.       </code></p></div>
  139.  
  140.       <p>╛σ╡¡Ñ╟ÑúÑ∞Ñ»Ñ╞ÑúÑ╓ñ╧íóCGI Ñ╒ÑíÑñÑδñ╬╝┬╣╘ñ≥▓─╟╜ñ╦ñ╣ñδñΦñª
  141.       Apache ñ╦┼┴ñ¿ñ▐ñ╣íúñ▐ñ┐íóñ╔ñ╬Ñ╒ÑíÑñÑδñ¼ CGI Ñ╒ÑíÑñÑδñ½ñ≥
  142.       Ñ╡í╝Ñ╨ñ╦┼┴ñ¿ñδ╔¼═╫ñ¼ñóñΩñ▐ñ╣íú╝íñ╬
  143.       <code class="directive"><a href="../mod/mod_mime.html#addhandler">AddHandler</a></code>
  144.       Ñ╟ÑúÑ∞Ñ»Ñ╞ÑúÑ╓ñ╬╬πñ╟ñ╧íó<code>cgi</code> ñ▐ñ┐ñ╧ <code>pl</code>
  145.       ñ≥│╚─Ñ╗╥ñ╦╗²ñ─ñ╣ñ┘ñ╞ñ╬Ñ╒ÑíÑñÑδñ≥ CGI
  146.       Ñ╫ÑφÑ░ÑΘÑαñ╚ñ╖ñ╞ñ▀ñ╩ñ╣ñ│ñ╚ñ≥Ñ╡í╝Ñ╨ñ╦┼┴ñ¿ñ▐ñ╣:</p>
  147.  
  148.       <div class="example"><p><code>
  149.         AddHandler cgi-script .cgi .pl
  150.       </code></p></div>
  151.     
  152.  
  153.     <h3><a name="htaccess" id="htaccess">.htaccess Ñ╒ÑíÑñÑδ</a></h3>
  154.       
  155.  
  156.       <p><a href="htaccess.html"><code>.htaccess</code> Ñ┴Ñσí╝Ñ╚ÑΩÑóÑδ</a>
  157.       ñ╧ <code>httpd.conf</code> ñ≥╩╤╣╣ñ╟ñ¡ñ╩ññ╛∞╣τñ╦ñ╔ñªñΣñ├ñ╞ CGI Ñ╫ÑφÑ░ÑΘÑαñ≥
  158.       ╗╚ñ¿ñδñΦñªñ╦ñ╣ñδñ½ñ≥└Γ╠└ñ╖ñ╞ñññ▐ñ╣íú</p>
  159.     
  160.  
  161.     <h3><a name="userdir" id="userdir">User Ñ╟ÑúÑ∞Ñ»Ñ╚ÑΩ</a></h3>
  162.       
  163.  
  164.       <p><code>.cgi</code> ñ╟╜¬ñ∩ñδñ╣ñ┘ñ╞ñ╬Ñ╒ÑíÑñÑδñ╦┬╨ñ╖ñ╞ CGI Ñ╫ÑφÑ░ÑΘÑαñ╬
  165.       ╝┬╣╘ñ≥╡÷▓─ñ╣ñδñ╦ñ╧íó░╩▓╝ñ╬└▀─Ωñ≥╗╚═╤ñ╟ñ¡ñ▐ñ╣íú</p>
  166.  
  167.       <div class="example"><p><code>
  168.       <Directory /home/*/public_html><br />
  169.       <span class="indent">
  170.         Options +ExecCGI<br />
  171.         AddHandler cgi-script .cgi<br />
  172.       </span>
  173.       </Directory>
  174.       </code></p></div>
  175.  
  176.       <p>ѵí╝Ñ╢Ñ╟ÑúÑ∞Ñ»Ñ╚ÑΩñ╬ <code>cgi-bin</code> Ñ╡Ñ╓Ñ╟ÑúÑ∞Ñ»Ñ╚ÑΩñ╬
  177.       ñ╣ñ┘ñ╞ñ╬Ñ╒ÑíÑñÑδñ≥ CGI Ñ╫ÑφÑ░ÑΘÑαñ╚ñ╖ñ╞╗╪─Ωñ╖ñ┐ññ╛∞╣τñ╦ñ╧
  178.       ░╩▓╝ñ╬ñΦñªñ╩ñΓñ╬ñ≥╗╚ñññ▐ñ╣íú</p>
  179.  
  180.       <div class="example"><p><code>
  181.       <Directory /home/*/public_html/cgi-bin><br />
  182.       <span class="indent">
  183.         Options ExecCGI<br />
  184.         SetHandler cgi-script<br />
  185.       </span>
  186.       </Directory>
  187.       </code></p></div>
  188.  
  189.     
  190.   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
  191. <div class="section">
  192. <h2><a name="writing" id="writing">CGI Ñ╫ÑφÑ░ÑΘÑαñ≥╜±ñ»</a></h2>
  193.     
  194.  
  195.     <p>í╓─╠╛∩ñ╬í╫Ñ╫ÑφÑ░ÑΘÑ▀Ñ≤Ñ░ñ╚ CGI
  196.     Ñ╫ÑφÑ░ÑΘÑ▀Ñ≤Ñ░ñ╬┤╓ñ╦ñ╧╝τñ╦╞≤ñ─ñ╬░πñññ¼ñóñΩñ▐ñ╣íú</p>
  197.  
  198.     <p>░∞ñ─ñ╧íóCGI Ñ╫ÑφÑ░ÑΘÑαñ╬ñ╣ñ┘ñ╞ñ╬╜╨╬╧ñ╦ñ╧ MIME-type
  199.     Ñ╪Ñ├Ñ└ñ≥╔╒ñ▒ñ╩ñ▒ñ∞ñ╨ñ╩ñΩñ▐ñ╗ñ≤íú
  200.     ñ│ñ∞ñ╧ñ╔ñ╬ñΦñªñ╩╝∩╬αñ╬Ñ│Ñ≤Ñ╞Ñ≤Ñ─ñ≥╝⌡ñ▒╝Φñ├ñ╞ñññδñ½ñ≥Ñ»ÑΘÑñÑóÑ≤Ñ╚ñ╦╝¿ñ╣
  201.     HTTP Ñ╪Ñ├Ñ└ñ╟ñ╣íúñ█ñ╚ñ≤ñ╔ñ╬╛∞╣τñ╟ñ╧íó╝íñ╬ñΦñªñ╦╜╨╬╧ñ╖ñ▐ñ╣:</p>
  202.  
  203.     <div class="example"><p><code>
  204.       Content-type: text/html
  205.     </code></p></div>
  206.  
  207.     <p>ñΓñª░∞ñ─ñ╧íó╜╨╬╧ñ≥ HTML
  208.     ñ½íóÑ╓ÑΘѪÑ╢ñ¼╔╜╝¿ñ╣ñδñ│ñ╚ñ¼ñ╟ñ¡ñδ▓┐ñ½┬╛ñ╬╖┴╝░ñ╦ñ╣ñδ╔¼═╫ñ¼ñóñΩñ▐ñ╣íú
  209.     ┬τ─±ñ╬╛∞╣τñ╧ HTML ñ╟ñ╖ñτñªñ¼íóGIF ÑñÑßí╝Ñ╕ñΣ┬╛ñ╬╚≤ HTML
  210.     Ñ│Ñ≤Ñ╞Ñ≤Ñ─ñ≥╜╨╬╧ñ╣ñδ CGI Ñ╫ÑφÑ░ÑΘÑαñ≥╜±ñ»ñ│ñ╚ñΓñóñδñ╟ñ╖ñτñªíú</p>
  211.  
  212.     <p>ñ│ñ∞ñΘ╞≤┼└░╩│░ñ╟ñ╧íóCGI Ñ╫ÑφÑ░ÑΘÑαñ≥╜±ñ»ñ│ñ╚ñ╧íó
  213.     ñóñ╩ñ┐ñ¼╜±ñññ╞ñññδ┬╛ñ╬Ñ╫ÑφÑ░ÑΘÑαñ╚ñΦñ»╗≈ñ╞ñññδñ╟ñ╖ñτñªíú</p>
  214.  
  215.     <h3><a name="firstcgi" id="firstcgi">║╟╜Θñ╬ CGI Ñ╫ÑφÑ░ÑΘÑα</a></h3>
  216.       
  217.  
  218.       <p>╝íñ╦╝¿ñ╣ñ╬ñ╧íóÑ╓ÑΘѪÑ╢ñ╦ 1 ╣╘░⌡╗·ñ╣ñδ CGI
  219.       Ñ╫ÑφÑ░ÑΘÑαñ╬╬πñ╟ñ╣íú░╩▓╝ñ≥╞■╬╧ñ╖íó<code>first.pl</code>
  220.       ñ╚ñññªÑ╒ÑíÑñÑδñ╦╩▌┬╕ñ╖íóñ╜ñ∞ñ≥ <code>cgi-bin</code>
  221.       Ñ╟ÑúÑ∞Ñ»Ñ╚ÑΩñ╦├╓ñññ╞ñ»ñ└ñ╡ññíú</p>
  222.  
  223.       <div class="example"><p><code>
  224.         #!/usr/bin/perl<br />
  225.         print "Content-type: text/html\n\n";<br />
  226.         print "Hello, World.";
  227.       </code></p></div>
  228.  
  229.       <p>Perl ñ╦└║─╠ñ╖ñ╞ñññ╩ñ»ñ╞ñΓíó
  230.       ▓┐ñ¼╡»ñ│ñδñ½ñ≥═²▓≥ñ╣ñδñ│ñ╚ñ╧ñ╟ñ¡ñδñ╟ñ╖ñτñªíú1 ╣╘╠▄ñ╧íó
  231.       <code>/usr/bin/perl</code> ñ╟╕½ñ─ñ▒ñΘñ∞ñδÑñÑ≤Ñ┐Ñ╫ÑΩÑ┐ñ╦
  232.       ñ│ñ╬Ñ╒ÑíÑñÑδñ≥╢í╡δñ╣ñδñ│ñ╚ñ╟ñ│ñ╬Ñ╫ÑφÑ░ÑΘÑαñ¼╝┬╣╘ñ╡ñ∞ñδñ│ñ╚ñ≥
  233.       Apache ñ╦ (Ñ╖ѺÑδ╛σñ╟╝┬╣╘ñ╖ñΦñªñ╚ñ╖ñ╞ñññδñ╩ñΘñ╨íóñ╜ñ╬Ñ╖ѺÑδñ╦ ) 
  234.       ╝¿ñ╖ñ▐ñ╣íú2 ╣╘╠▄ñ╧íó┴░╜╥ñ╖ñ┐ñ╚ñ¬ñΩ content-type ñ╬─Ω╡┴ñ≥░⌡╗·ñ╖ñ▐ñ╣íú
  235.       ñ│ñ∞ñ╦ñ╧╔ⁿ╡ó▓■╣╘ñ╬╞≤ñ─ñ╬┴╚ñ≥╕σñ╦╔╒▓├ñ╖ñ▐ñ╣íú
  236.       ñ│ñ∞ñ╦ñΦñΩíóÑ╪Ñ├Ñ└ñ╬╜¬ñΩñ╦╢⌡╣╘ñ¼├╓ñ½ñ∞íóHTTP
  237.       Ñ╪Ñ├Ñ└ñ╬╜¬ñΩñ╚Ñ▄Ñ╟Ñúñ╬╗╧ñ▐ñΩñ≥╝¿ñ╖ñ▐ñ╣íú3 ╣╘╠▄ñ╧íó"Hello, World."
  238.       ñ╚ñññª╩╕╗·╬≤ñ≥░⌡╗·ñ╖íóñ│ñ∞ñ╟╜¬ñΩñ╚ñ╩ñΩñ▐ñ╣íú</p>
  239.  
  240.       <p>╣Ññ▀ñ╬Ñ╓ÑΘѪÑ╢ñ≥│½ñ¡íóÑóÑ╔Ñ∞Ñ╣</p>
  241.  
  242.       <div class="example"><p><code>
  243.         http://www.example.com/cgi-bin/first.pl
  244.       </code></p></div>
  245.  
  246.       <p>ñóñδñññ╧Ñ╒ÑíÑñÑδñ≥├╓ñññ┐ÑφÑ▒í╝Ñ╖ÑτÑ≤ñ≥╗╪─Ωñ╣ñδñ╚íó
  247.       <code>Hello, World.</code>
  248.       ñ╚ñññª 1 ╣╘ñ¼Ñ╓ÑΘѪÑ╢ѪÑúÑ≤Ñ╔ñ╦╕╜ñ∞ñδñ╟ñ╖ñτñªíú
  249.       ñ╜ñ∞ñ╧ñóñ▐ñΩÑ¿Ñ¡Ñ╡ÑñÑ╞ÑúÑ≤Ñ░ñ╩ñ│ñ╚ñ╟ñ╧ñóñΩñ▐ñ╗ñ≤íú
  250.       ñ╖ñ½ñ╖íóñ│ñ∞ñ¼ñªñ▐ñ»╞░ñ▒ñ╨íó
  251.       ┬╛ñ╬ñ╔ñ╬ñΦñªñ╩ñΓñ╬ñ╟ñΓ╞░ñ½ñ╣ñ│ñ╚ñ¼ñ╟ñ¡ñδñΦñªñ╦ñ╩ñΩñ▐ñ╣íú</p>
  252.     
  253.   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
  254. <div class="section">
  255. <h2><a name="troubleshoot" id="troubleshoot">ñ╖ñ½ñ╖íóñ▐ñ└╞░ñ½ñ╩ññ !</a></h2>
  256.     
  257.  
  258.     <p>ѪѺÑ╓ñ½ñΘ CGI Ñ╫ÑφÑ░ÑΘÑαñ╪ñ╬ÑóÑ»Ñ╗Ñ╣ñ≥╣╘ñ╩ñ├ñ┐ñ╚ñ¡íó
  259.     Ñ╓ÑΘѪÑ╢ñ╟╕½ñδ▓─╟╜└¡ñ¼ñóñδ╗═ñ─ñ╬┤≡╦▄┼¬ñ╩ñ│ñ╚ñ¼ñóñΩñ▐ñ╣:</p>
  260.  
  261.     <dl>
  262.       <dt>CGI Ñ╫ÑφÑ░ÑΘÑαñ╬╜╨╬╧</dt>
  263.       <dd>┴╟└▓ñΘñ╖ññ ! ñ╜ñ∞ñ╧ñ╣ñ┘ñ╞ñ¼ñªñ▐ñ»╞░ñññ┐ñ│ñ╚ñ≥░╒╠úñ╖ñ▐ñ╣íú
  264.       ╜╨╬╧ñ¼└╡╛∩ñ└ñ▒ñ∞ñ╔ñΓíóÑ╓ÑΘѪÑ╢ñ¼└╡╛∩ñ╦╜Φ═²ñ╖ñ╞ñ»ñ∞ñ╩ññ╛∞╣τñ╧íó
  265.       └╡ñ╖ññ <code>Content-Type</code> ñ≥ CGI Ñ╫ÑφÑ░ÑΘÑα╞Γñ╟
  266.       Ñ╗Ñ├Ñ╚ñ╖ñ┐ñ½ñ≥│╬╟ºñ╖ñ╞ñ»ñ└ñ╡ññíú</dd>
  267.  
  268.       <dt>CGI Ñ╫ÑφÑ░ÑΘÑαñ╬Ñ╜í╝Ñ╣Ñ│í╝Ñ╔íóñ▐ñ┐ñ╧ "POST Method Not Allowed"
  269.       ñ╚ñññªÑßÑ├Ñ╗í╝Ñ╕</dt> 
  270.       <dd>ñ│ñ∞ñ╧íóCGI Ñ╫ÑφÑ░ÑΘÑαñ≥╜Φ═²ñ╟ñ¡ñδñΦñª Apache
  271.       ñ≥┼¼└┌ñ╦└▀─Ωñ╖ñ╞ñññ╩ñ½ñ├ñ┐ñ│ñ╚ñ≥░╒╠úñ╖ñ▐ñ╣íú<a href="#configuring">í╓CGI ñ≥╡÷▓─ñ╣ñδñΦñªñ╦
  272.       Apache ñ≥└▀─Ωñ╣ñδí╫</a>ñ╬╛╧ñ≥╞╔ñ▀─╛ñ╖íó
  273.       ñóñ╩ñ┐ñ¼▓┐ñ≥┤╓░πñ¿ñ┐ñ½ñ≥├╡ñ╖ñ╞ñ▀ñ╞ñ»ñ└ñ╡ññíú
  274.       </dd>
  275.  
  276.       <dt>ÑßÑ├Ñ╗í╝Ñ╕ñ¼ "Forbidden" ñ╟╗╧ñ▐ñ├ñ╞ñññδ</dt>
  277.       <dd>ñ│ñ∞ñ╧Ñ╤í╝Ñ▀Ñ├Ñ╖ÑτÑ≤ñ╬╠Σ┬Ωñ╚ñññªñ│ñ╚ñ≥░╒╠úñ╖ñ▐ñ╣íú
  278.       <a href="#errorlogs">Apache ñ╬Ñ¿ÑΘí╝ÑφÑ░</a>ñ╚íó╕σ╜╥ñ╬<a href="#permissions">í╓Ñ╒ÑíÑñÑδñ╬Ñ╤í╝Ñ▀Ñ├Ñ╖ÑτÑ≤í╫</a>
  279.       ñ╬╛╧ñ≥Ñ┴ѺÑ├Ñ»ñ╖ñ╞ñ»ñ└ñ╡ññíú
  280.       </dd>
  281.  
  282.       <dt>"Internal Server Error" ñ╚ñññªÑßÑ├Ñ╗í╝Ñ╕</dt>
  283.       <dd><a href="#errorlogs">Apache
  284.       ñ╬Ñ¿ÑΘí╝ÑφÑ░</a>ñ≥Ñ┴ѺÑ├Ñ»ñ╣ñδñ╚íó"Premature end of script headers"
  285.       ñ╚ñññªÑφÑ░ñ¼╡¡╧┐ñ╡ñ∞ñ╞ñññδñ╚╗╫ñññ▐ñ╣íúñ╜ñ╖ñ╞íóñ¬ñ╜ñΘñ» CGI
  286.       Ñ╫ÑφÑ░ÑΘÑαñ╦ñΦñ├ñ╞└╕└«ñ╡ñ∞ñ┐Ñ¿ÑΘí╝ÑßÑ├Ñ╗í╝Ñ╕ñΓ╡¡╧┐ñ╡ñ∞ñ╞ñññδñ╟ñ╖ñτñªíú
  287.       ñ│ñ╬╛∞╣τíóCGI Ñ╫ÑφÑ░ÑΘÑαñ¼┼¼└┌ñ╩
  288.       HTTP Ñ╪Ñ├Ñ└ñ≥╜╨╬╧ñ╟ñ¡ñ╩ññ╕╢░°ñ≥├╬ñδñ┐ñßñ╦íó
  289.       ░╩▓╝ñ╬│╞╛╧ñ╟Ñ┴ѺÑ├Ñ»ñ╖ñ╞ñ▀ñ╞ñ»ñ└ñ╡ññíú</dd>
  290.     </dl>
  291.  
  292.     <h3><a name="permissions" id="permissions">Ñ╒ÑíÑñÑδñ╬Ñ╤í╝Ñ▀Ñ├Ñ╖ÑτÑ≤</a></h3>
  293.       
  294.  
  295.       <p>Ñ╡í╝Ñ╨ñ╧ñóñ╩ñ┐ñ╬╕ó╕┬ñ╟╝┬╣╘ñ╡ñ∞ñ╞ñññ╩ñññ╬ñ≥╦║ñ∞ñ╩ñññΦñªñ╦íú
  296.       ñ─ñ▐ñΩíó╡»╞░ñ╣ñδñ╚ñ¡íóÑ╡í╝Ñ╨ñ╧╞├╕óñ≥ñΓñ┐ñ╩ññѵí╝Ñ╢ - ─╠╛∩ <code>nobody</code>
  297.       ñΣ <code>www</code> ñ╬╕ó╕┬ñ╟╝┬╣╘ñ╡ñ∞ñ▐ñ╣íúñ╖ñ┐ñ¼ñ├ñ╞íóñóñ╩ñ┐ñ¼╜Ω═¡ñ╣ñδ
  298.       Ñ╒ÑíÑñÑδñ≥╝┬╣╘ñ╣ñδñ╦ñ╧╩╠ñ╬Ñ╤í╝Ñ▀Ñ├Ñ╖ÑτÑ≤ñ¼╔¼═╫ñ╚ñ╩ñΩñ▐ñ╣íú
  299.       ─╠╛∩íó<code>nobody</code> ñ¼╝┬╣╘ñ╣ñδñ╬ñ╦╜╜╩¼ñ╩Ñ╤í╝Ñ▀Ñ├Ñ╖ÑτÑ≤ñ≥═┐ñ¿ñδ╩²╦íñ╧íó
  300.       Ñ╒ÑíÑñÑδñ╦├»ñ╟ñΓ╝┬╣╘▓─╟╜ñ╚ñ╣ñδÑ╤í╝Ñ▀Ñ├Ñ╖ÑτÑ≤ñ≥═┐ñ¿ñδñ│ñ╚ñ╟ñ╣:</p>
  301.  
  302.       <div class="example"><p><code>
  303.         chmod a+x first.pl
  304.       </code></p></div>
  305.  
  306.       <p>ñ▐ñ┐íóñΓñ╖ñóñ╩ñ┐ñ╬Ñ╫ÑφÑ░ÑΘÑαñ¼┬╛ñ╬Ñ╒ÑíÑñÑδñ≥╞╔ñ▀╜±ñ¡ñ╣ñδñ╩ñΘñ╨íó
  307.       ñ╜ñ∞ñΘñ╬Ñ╒ÑíÑñÑδñ╧íóñ│ñ∞ñ¼▓─╟╜ñ╚ñ╩ñδ└╡ñ╖ññÑ╤í╝Ñ▀Ñ├Ñ╖ÑτÑ≤
  308.       ñ≥╗²ñ├ñ╞ñññδ╔¼═╫ñ¼ñóñΩñ▐ñ╣íú</p>
  309.  
  310.     
  311.  
  312.     <h3><a name="pathinformation" id="pathinformation">Ñ╤Ñ╣╛≡╩≤ñ╚┤─╢¡</a></h3>
  313.       
  314.  
  315.       <p>Ñ│Ñ▐Ñ≤Ñ╔ÑΘÑñÑ≤ñ½ñΘÑ╫ÑφÑ░ÑΘÑαñ≥╝┬╣╘ñ╣ñδñ╚ñ¡íó
  316.       ░╒╝▒ñ╖ñ╩ñ»ñ╞ñΓÑ╖ѺÑδñ╦┼╧ñ╡ñ∞ñδ╛≡╩≤ñ¼ñóñΩñ▐ñ╣íú
  317.       ╬πñ¿ñ╨íó╗▓╛╚ñ╣ñδÑ╒ÑíÑñÑδñ╬ñ┐ñßñ╦ñ╔ñ│ñ≥╕í║≈ñ╖ñ┐ñΘñΦñññ½ñ≥
  318.       Ñ╖ѺÑδñ╦┼┴ñ¿ñδ <code>PATH</code> ñ¼ñóñΩñ▐ñ╣íú</p>
  319.  
  320.       <p>Ñ╫ÑφÑ░ÑΘÑαñ¼ CGI Ñ╫ÑφÑ░ÑΘÑαñ╚ñ╖ñ╞ѪѺÑ╓Ñ╡í╝Ñ╨ñ╦ñΦñ├ñ╞╝┬╣╘ñ╡ñ∞ñδñ╚ñ¡íó
  321.       ñ╜ñ∞ñ╧╞▒ñ╕ <code>PATH</code> ñ╟ñ╧ñ╩ñññ½ñΓñ╖ñ∞ñ▐ñ╗ñ≤íú
  322.       CGI Ñ╫ÑφÑ░ÑΘÑα╞Γñ╟╕╞ñ╙╜╨ñ╣ñóñΘñµñδÑ╫ÑφÑ░ÑΘÑα
  323.       (╬πñ¿ñ╨íó<code>sendmail</code> ñ╬ñΦñªñ╩ñΓñ╬) ñ╧íó
  324.       Ñ╒ÑδÑ╤Ñ╣ñ╟╗╪─Ωñ╣ñδ╔¼═╫ñ¼ñóñδñ╟ñ╖ñτñªíúñ╜ñ∞ñ╦ñΦñΩíóCGI
  325.       Ñ╫ÑφÑ░ÑΘÑαñ≥╝┬╣╘ñ╖ñΦñªñ╚ñ╖ñ┐ñ╚ñ¡íó
  326.       Ñ╖ѺÑδñ╧ñ╜ñ╬ñΦñªñ╩Ñ╫ÑφÑ░ÑΘÑαñ≥╕½ñ─ñ▒ñδñ│ñ╚ñ¼ñ╟ñ¡ñ▐ñ╣íú</p>
  327.  
  328.       <p>╞▒══ñ╩ñ│ñ╚ñ╧íóÑ╣Ñ»ÑΩÑ╫Ñ╚ñ╬ÑñÑ≤Ñ┐Ñ╫ÑΩÑ┐ (ñ╖ñ╨ñ╖ñ╨ <code>perl</code>)
  329.       ñ╪ñ╬Ñ╤Ñ╣ñ╟íóCGI Ñ╫ÑφÑ░ÑΘÑαñ╬ 1 ╣╘╠▄ñ╦╝íñ╬ñΦñªñ╦╝¿ñ╡ñ∞ñ▐ñ╣:</p>
  330.  
  331.       <div class="example"><p><code>
  332.         #!/usr/bin/perl
  333.       </code></p></div>
  334.  
  335.       <p>ñ│ñ∞ñ¼ÑñÑ≤Ñ┐í╝Ñ╫ÑΩÑ┐ñ╪ñ╬╝┬║▌ñ╬Ñ╤Ñ╣ñ╟ñóñδñ│ñ╚ñ≥│╬╟ºñ╖ñ╞ñ¬ñ¡ñ▐ñ╣íú</p>
  336.     
  337.  
  338.       <p>ñ▐ñ┐íóCGI Ñ╫ÑφÑ░ÑΘÑαñ¼┬╛ñ╬<a href="#env">┤─╢¡╩╤┐⌠</a>ñ╦░═┬╕ñ╖ñ╞ñññδ╛∞╣τñ╧íóñ╜ñ╬┤─╢¡╩╤┐⌠ñ¼
  339.       Apache ñ½ñΘ┼╧ñ╡ñ∞ñδñΦñªñ╦ñ╣ñδ╔¼═╫ñ¼ñóñΩñ▐ñ╣íú</p>
  340.  
  341.     <h3><a name="syntaxerrors" id="syntaxerrors">Ñ╫ÑφÑ░ÑΘÑαÑ¿ÑΘí╝</a></h3>
  342.       
  343.  
  344.       <p>CGI
  345.       Ñ╫ÑφÑ░ÑΘÑαñ¼╝║╟╘ñ╣ñδñ╬ñ╧┬τ─±íóÑ╫ÑφÑ░ÑΘÑα╝½┐╚ñ╦╠Σ┬Ωñ¼ñóñδ╛∞╣τñ╟ñ╣íú
  346.       ░∞┼┘ CGI ñ╬╗╚ññ╩²ñ≥═²▓≥ñ╖íó┴░╜╥ñ╬╞≤ñ─ñ╬╕φñΩñ≥╚╚ñ╖ñ╞ñññ╩ñññ╩ñΘñ╨íó
  347.       ñ▐ñ║┤╓░πñññ╩ñ»ñ╜ñªñ╟ñ╖ñτñªíúÑ╓ÑΘѪÑ╢ñ≥╗╚ñ├ñ╞Ñ╞Ñ╣Ñ╚ñ╣ñδ┴░ñ╦
  348.       ñ▐ñ║│╬╟ºñ╣ñδñ│ñ╚ñ╧íóÑ│Ñ▐Ñ≤Ñ╔ÑΘÑñÑ≤ñ½ñΘÑ╫ÑφÑ░ÑΘÑαñ¼╝┬╣╘ñ╟ñ¡ñδñ│ñ╚ñ╟ñ╣íú
  349.       ╬πñ¿ñ╨íó░╩▓╝ñ≥╝┬╣╘ñ╖ñ╞ñ▀ñ╞ñ»ñ└ñ╡ññ:</p>
  350.  
  351.       <div class="example"><p><code>
  352.       cd /usr/local/apache2/cgi-bin<br />
  353.       ./first.pl
  354.       </code></p></div>
  355.  
  356.       <p>(<code>perl</code> ÑñÑ≤Ñ┐Ñ╫ÑΩÑ┐ñ╧╕╞ñ╨ñ╩ñññ╟ñ»ñ└ñ╡ññíú
  357.       Ñ╖ѺÑδñ╚ Apache ñ¼Ñ╣Ñ»ÑΩÑ╫Ñ╚ñ╬║╟╜Θñ╬╣╘ñ╬ <a href="#pathinformation">Ñ╤Ñ╣╛≡╩≤</a> ñ≥╗╚ñ├ñ╞╕½ñ─ñ▒ñ▐ñ╣íú)</p>
  358.  
  359.       <p>║╟╜Θñ╦Ñ╫ÑφÑ░ÑΘÑαñ½ñΘ╜╨╬╧ñ╡ñ∞ñδñ╬ñ╧ <code>Content-Type</code> ñ≥┤▐ñ▀íó
  360.       ╕σñ╦╢⌡╣╘ñ╬┬│ñ» HTTP Ñ╪Ñ├Ñ└ñ╟ñ╩ñ▒ñ∞ñ╨ñ╩ñΩñ▐ñ╗ñ≤íú┬╛ñ╬ñΓñ╬ñ¼╜╨╬╧ñ╡ñ∞ñ╞ñññδ
  361.       ╛∞╣τñ╧íóApache ñ╧ñ│ñ╬Ñ╫ÑφÑ░ÑΘÑαñ≥Ñ╡í╝Ñ╨╖╨═│ñ╟╝┬╣╘ñ╖ñΦñªñ╚ñ╖ñ┐ñ╚ñ¡ñ╦ñ╧
  362.       <code>Premature end of script headers</code> Ñ¿ÑΘí╝ñ≥╜╨╬╧ñ╖ñ▐ñ╣íú╛▄║┘ñ╧
  363.       ╛σ╡¡ñ╬ <a href="#writing">CGI Ñ╫ÑφÑ░ÑΘÑαñ≥╜±ñ»</a> ñ≥╞╔ñ≤ñ╟ñ»ñ└ñ╡ññíú</p>
  364.     
  365.  
  366.     <h3><a name="errorlogs" id="errorlogs">Ñ¿ÑΘí╝ÑφÑ░</a></h3>
  367.       
  368.  
  369.       <p>Ñ¿ÑΘí╝ÑφÑ░ñ╧═º├úñ╟ñ╣íú
  370.       ┴┤ñ╞ñ╬ñªñ▐ñ»ñññ½ñ╩ñññ│ñ╚ñ╧íóÑ¿ÑΘí╝ÑφÑ░ñ╦ÑßÑ├Ñ╗í╝Ñ╕ñ≥└╕└«ñ╖ñ▐ñ╣íú
  371.       ╔¼ñ║ñ╜ñ∞ñ≥║╟╜Θñ╦╕½ñδñ┘ñ¡ñ╟ñ╣íú
  372.       ñΓñ╖íóñóñ╩ñ┐ñ¼ÑªÑºÑ╓Ñ╡ÑñÑ╚ñ≥╝τ║┼ñ╖ñ╞ñññδ╛∞╜Ωñ¼
  373.       Ñ¿ÑΘí╝ÑφÑ░ñ╬╗▓╛╚ñ≥╡÷ñ╖ñ╞ñññ╩ñññ╩ñΘñ╨íóñ¡ñ├ñ╚┬╛ñ╬Ñ╡ÑñÑ╚ñ╟╝τ║┼ñ╣ñδñ┘ñ¡ñ╟ñ╣íú
  374.       Ñ¿ÑΘí╝ÑφÑ░ñ╬╞╔ñ▀╩²ñ≥│╪ñ╓ñ│ñ╚ñ╟íóñ█ñ╚ñ≤ñ╔┴┤ñ╞ñ╬╠Σ┬Ωñ¼┐╫┬«ñ╦│╬╟ºñ╡ñ∞íó
  375.       ┐╫┬«ñ╦▓≥╖Φñ╡ñ∞ñδñ╚ñññªñ│ñ╚ñ¼╩¼ñ½ñδñ╟ñ╖ñτñªíú</p>
  376.     
  377.  
  378.     <h3><a name="suexec" id="suexec">Suexec</a></h3>
  379.       
  380.  
  381.       <p><a href="../suexec.html">suexec</a> Ñ╡Ñ▌í╝Ñ╚Ñ╫ÑφÑ░ÑΘÑαñ╧
  382.       Ñ╨í╝Ñ┴ÑπÑδÑ█Ñ╣Ñ╚ñΣѵí╝Ñ╢ñ╬Ñ█í╝ÑαÑ╟ÑúÑ∞Ñ»Ñ╚ÑΩñ╬╛∞╜Ωñ╦░═ñ├ñ╞
  383.       CGI Ñ╫ÑφÑ░ÑΘÑαñ≥░πñªÑµí╝Ñ╢╕ó╕┬ñ╬▓╝ñ╟┴÷ñΘñ╗ñδñ│ñ╚ñ≥▓─╟╜ñ╦ñ╖ñ▐ñ╣íú
  384.       Suexec ñ╬╕ó╕┬ñ╬Ñ┴ѺÑ├Ñ»ñ╧╚≤╛∩ñ╦╕╖ñ╖ñ»íóñ╜ñ∞ñ≥╦■ñ┐ñ╡ñ╩ññ╛∞╣τñ╧
  385.       CGI Ñ╫ÑφÑ░ÑΘÑαñ¼ <code>Premature end of script headers</code> Ñ¿ÑΘí╝ñ╟
  386.       ╝┬╣╘ñ╡ñ∞ñ▐ñ╗ñ≤íú</p>
  387.  
  388.       <p>suexec ñ≥╗╚ñ├ñ╞ñññδñ½ñ╔ñªñ½ñ≥─┤ñ┘ñ┐ñßñ╦ñ╧ <code>apachectl
  389.       -V</code> ñ≥╝┬╣╘ñ╖ñ╞íó<code>SUEXEC_BIN</code> ñ╬╛∞╜Ωñ≥─┤ñ┘ñ╞ñ»ñ└ñ╡ññíú
  390.       Apache ñ¼ñ╜ñ│ñ╦ <code class="program"><a href="../programs/suexec.html">suexec</a></code> ñ╬Ñ╨ÑñÑ╩ÑΩñ≥╚»╕½ñ╖ñ┐╛∞╣τñ╧íósuexec ñ¼
  391.       ╗╚═╤ñ╡ñ∞ñ▐ñ╣íú</p>
  392.  
  393.       <p>suexec ñ≥┤░┴┤ñ╦═²▓≥ñ╖ñ╞ñññ╩ññ╕┬ñΩíó╗╚ñªñ┘ñ¡ñ╟ñ╧ñóñΩñ▐ñ╗ñ≤íú
  394.       suexec ñ≥╠╡╕·ñ╦ñ╣ñδñ╦ñ╧íó<code>SUEXEC_BIN</code> ñ½ñΘ╗╪ñ╡ñ∞ñ╞ñññδ
  395.       <code class="program"><a href="../programs/suexec.html">suexec</a></code> Ñ╨ÑñÑ╩ÑΩñ≥║∩╜ⁿ (ñ½╠╛┴░ñ≥╩╤╣╣) ñ╣ñδñ└ñ▒ñ╟ñ╣íú
  396.       <a href="../suexec.html">suexec</a> ñ≥╞╔ñ≤ñ└╕σñ╟íóñ▐ñ└ñ╜ñ∞ñ≥
  397.       ╗╚ñññ┐ñññ╬ñ╟ñóñ∞ñ╨íó<code>suexec -V</code> ñ≥╝┬╣╘ñ╖ñ╞ suexec ñ╬
  398.       ÑφÑ░Ñ╒ÑíÑñÑδñ╬░╠├╓ñ≥─┤ñ┘íóñ╜ñ╬ÑφÑ░Ñ╒ÑíÑñÑδñ≥╗╚ñ├ñ╞Ñ▌ÑΩÑ╖í╝░π╚┐ñ≥
  399.       ╕½ñ─ñ▒ñ╞ñ»ñ└ñ╡ññíú</p>
  400.     
  401.   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
  402. <div class="section">
  403. <h2><a name="behindscenes" id="behindscenes">╬óñ╟▓┐ñ¼╡»ñ│ñ├ñ╞ñññδñ╬ñ½?</a></h2>
  404.     
  405.  
  406.     <p>CGI Ñ╫ÑφÑ░ÑΘÑ▀Ñ≤Ñ░ñ╦╜¼╜╧ñ╣ñδñ╚íó
  407.     ╬óñ╟╡»ñ│ñ├ñ╞ñññδñ│ñ╚ñ╦ñ─ñññ╞╣╣ñ╦═²▓≥ñ╣ñδñ│ñ╚ñ╬╠≥ñ╦╬⌐ñ┴ñ▐ñ╣íú
  408.     Ñ╓ÑΘѪÑ╢ñ╚Ñ╡í╝Ñ╨ñ¼ñ╔ñ╬ñΦñªñ╦┴Ω╕▀─╠┐«ñ╣ñδñ½ñ╦ñ─ñññ╞ñ╧╞├ñ╦ñ╜ñªñ╟ñ╣íú
  409.     ñ╩ñ╝ñ╩ñΘíó"Hello, World."
  410.     ñ≥░⌡╗·ñ╣ñδÑ╫ÑφÑ░ÑΘÑαñ≥╜±ñ»ñ│ñ╚ñ╧ñ¬ñ¬ñññ╦╖δ╣╜ñ╟ñ╣ñ¼íó
  411.     ñ╜ñ∞ñ╧╞├ñ╦═¡▒╫ñ╟ñ╧ñóñΩñ▐ñ╗ñ≤íú</p>
  412.  
  413.     <h3><a name="env" id="env">┤─╢¡╩╤┐⌠</a></h3>
  414.       
  415.  
  416.       <p>┤─╢¡╩╤┐⌠ñ╧íó
  417.       ñóñ╩ñ┐ñ¼Ñ│Ñ≤Ñ╘Ñσí╝Ñ┐ñ≥╗╚ñªñ╚ñ¡ñ╦╩╒ñΩñ╦┬╕║▀ñ╖ñ╞ñññδ├═ñ╟ñ╣íú
  418.       ñ╜ñ∞ñΘñ╧íóÑ╤Ñ╣
  419.       (Ñ│Ñ▐Ñ≤Ñ╔ñ≥Ñ┐ÑñÑ╫ñ╖ñ┐ñ╚ñ¡ñ╦╝┬╣╘ñ╣ñδ╝┬║▌ñ╬Ñ╒ÑíÑñÑδñ≥├╡ñ╖╜╨ñ╣ñ╚ñ│ñφ)íó
  420.       Ñµí╝Ñ╢╠╛íó├╝╦÷╖┐ñ╩ñ╔ñ╬ñΦñªñ╩╩╪═°ñ╩ñΓñ╬ñ╟ñ╣íú
  421.       ─╠╛∩íó╔ß├╩╗╚═╤ñ╖ñ╞ñññδ┤─╢¡╩╤┐⌠ñ╬┤░┴┤ñ╩ÑΩÑ╣Ñ╚ñ≥─┤ñ┘ñδñ╦ñ╧íó
  422.       Ñ│Ñ▐Ñ≤Ñ╔Ñ╫ÑφÑ≤Ñ╫Ñ╚ñ╟ <code>env</code> ñ≥╞■╬╧ñ╖ñ▐ñ╣íú</p>
  423.  
  424.       <p>CGI ñ╬╜Φ═²├µíóÑ╡í╝Ñ╨ñ╚Ñ╓ÑΘѪÑ╢ñΓ┤─╢¡╩╤┐⌠ñ≥└▀─Ωñ╖íó
  425.       ñ╜ñ∞ñ╦ñΦñΩ┴Ω╕▀ñ╦─╠┐«ñ╣ñδñ│ñ╚ñ¼ñ╟ñ¡ñδñΦñªñ╦ñ╩ñΩñ▐ñ╣íú
  426.       ñ╜ñ╬┤─╢¡╩╤┐⌠ñ╧íóÑ╓ÑΘѪÑ╢Ñ┐ÑñÑ╫ (Netscape, IE, Lynx)íóÑ╡í╝Ñ╨Ñ┐ÑñÑ╫
  427.       (Apache, IIS, WebSite)íó╝┬╣╘ñ╡ñ∞ñ╞ñññδ CGI
  428.       Ñ╫ÑφÑ░ÑΘÑαñ╬╠╛┴░ñ╩ñ╔ñ╟ñ╣íú</p>
  429.  
  430.       <p>ñ│ñ∞ñΘñ╬╩╤┐⌠ñ╧ CGI Ñ╫ÑφÑ░ÑΘÑ▐ñ¼╗╚═╤ñ╟ñ¡ñ▐ñ╣íú
  431.       ñ╜ñ╖ñ╞íóñ╜ñ∞ñ╧Ñ»ÑΘÑñÑóÑ≤Ñ╚ñ╚Ñ╡í╝Ñ╨ñ╬─╠┐«ñ╬╧├ñ╬╚╛╩¼ñ╟ñ╣íú
  432.       ╔¼═╫ñ╩╩╤┐⌠ñ╬┤░┴┤ñ╩ÑΩÑ╣Ñ╚ñ╧ <a href="http://hoohoo.ncsa.uiuc.edu/cgi/env.html">http://hoohoo.ncsa.uiuc.edu/cgi/env.html</a> ñ╦ñóñΩñ▐ñ╣íú</p>
  433.  
  434.       <p>░╩▓╝ñ╬├▒╜πñ╩ Perl CGI
  435.       Ñ╫ÑφÑ░ÑΘÑαñ╧íó┼╧ñ╡ñ∞ñδ┴┤ñ╞ñ╬┤─╢¡╩╤┐⌠ñ≥╔╜╝¿ñ╖ñ▐ñ╣íú╞▒══ñ╬Ñ╫ÑφÑ░ÑΘÑαñ╧íó
  436.       Apache Ñ╟ÑúÑ╣Ñ╚ÑΩÑ╙Ñσí╝Ñ╖ÑτÑ≤ñ╬ <code>cgi-bin</code>
  437.       Ñ╟ÑúÑ∞Ñ»Ñ╚ÑΩñ╦╞≤ñ─┤▐ñ▐ñ∞ñ╞ñññ▐ñ╣íú
  438.       ñññ»ñ─ñ½ñ╬╩╤┐⌠ñ¼╔¼┐▄ñ╟ñóñΩíóñññ»ñ─ñ½ñ╧╟ñ░╒ñ╟ñóñδñ│ñ╚ñ╦├φ░╒ñ╖ñ╞ñ»ñ└ñ╡ññíú
  439.       ñ╜ñ╖ñ╞íó╕°╝░ñ╬ÑΩÑ╣Ñ╚ñ╦ñ╧ñ╩ñññññ»ñ─ñ½ñ╬╩╤┐⌠ñ¼╔╜╝¿ñ╡ñ∞ñ╞ñññδñ½ñΓñ╖ñ∞ñ▐ñ╗ñ≤íú
  440.       ñ╡ñΘñ╦íóApache ñ╧Ñ╟Ñ╒Ñ⌐ÑδÑ╚ñ╟═╤░╒ñ╡ñ∞ñ╞ñññδ┤≡╦▄┼¬ñ╩ñΓñ╬ñ╦
  441.       <a href="../env.html">ñóñ╩ñ┐╝½┐╚ñ╬┤─╢¡╩╤┐⌠ñ≥▓├ñ¿ñδ</a>ñ┐ñßñ╬íó
  442.       ┬┐ñ»ñ╬░█ñ╩ñδ╩²╦íñ≥═╤░╒ñ╖ñ╞ñ╖ñ▐ñ╣íú</p>
  443.  
  444.       <div class="example"><p><code>
  445.         #!/usr/bin/perl<br />
  446.         print "Content-type: text/html\n\n";<br />
  447.         foreach $key (keys %ENV) {<br />
  448.         <span class="indent">
  449.           print "$key --> $ENV{$key}<br>";<br />
  450.         </span>
  451.         }
  452.       </code></p></div>
  453.     
  454.  
  455.     <h3><a name="stdin" id="stdin">STDIN ñ╚ STDOUT</a></h3>
  456.       
  457.  
  458.       <p>Ñ╡í╝Ñ╨ñ╚Ñ»ÑΘÑñÑóÑ≤Ñ╚┤╓ñ╬ñΓñª░∞ñ─ñ╬─╠┐«ñ╧íó╔╕╜α╞■╬╧
  459.       (<code>STDIN</code>)ñ╚╔╕╜α╜╨╬╧ (<code>STDOUT</code>)
  460.       ñ≥─╠ñ╕ñ╞╣╘ñ╩ñ∩ñ∞ñ▐ñ╣íú─╠╛∩ñ╬╩╕╠«ñ╦ñ¬ñññ╞íó<code>STDIN</code>
  461.       ñ╧Ñ¡í╝Ñ▄í╝Ñ╔ñΣÑ╫ÑφÑ░ÑΘÑαñ¼╞░║εñ╣ñδñ┐ñßñ╦═┐ñ¿ñΘñ∞ñδÑ╒ÑíÑñÑδñ≥░╒╠úñ╖íó
  462.       <code>STDOUT</code> ñ╧─╠╛∩Ñ│Ñ≤Ñ╜í╝Ñδñ▐ñ┐ñ╧Ñ╣Ñ»ÑΩí╝Ñ≤ñ≥░╒╠úñ╖ñ▐ñ╣íú</p>
  463.  
  464.       <p>ѪѺÑ╓Ñ╒Ñ⌐í╝Ñαñ½ñΘ CGI Ñ╫ÑφÑ░ÑΘÑαñ╪<code>POST</code>
  465.       ñ╖ñ┐ñ╚ñ¡íóÑ╒Ñ⌐í╝Ñαñ╬Ñ╟í╝Ñ┐ñ╧╞├╩╠ñ╩Ñ╒Ñ⌐í╝Ñ▐Ñ├Ñ╚ñ╟┬½ñ═ñΘñ∞íó
  466.       <code>STDIN</code> ñ≥─╠ñ╖ñ╞íóCGI Ñ╫ÑφÑ░ÑΘÑαñ╦░·ñ¡┼╧ñ╡ñ∞ñ▐ñ╣íú
  467.       Ñ╫ÑφÑ░ÑΘÑαñ╧Ñ╟í╝Ñ┐ñ¼Ñ¡í╝Ñ▄í╝Ñ╔
  468.       ñΓñ╖ñ»ñ╧Ñ╒ÑíÑñÑδñ½ñΘ═Φñ╞ñññ┐ñ½ñ╬ñΦñªñ╦╜Φ═²ñ╣ñδñ│ñ╚ñ¼ñ╟ñ¡ñ▐ñ╣íú</p>
  469.  
  470.       <p>í╓╞├╩╠ñ╩Ñ╒Ñ⌐í╝Ñ▐Ñ├Ñ╚í╫ñ╧ñ╚ñ╞ñΓ├▒╜πñ╟ñ╣íúÑ╒Ñúí╝ÑδÑ╔╠╛ñ╚├═ñ╧ÑñÑ│í╝Ñδ
  471.       (=) ñ╟╖δñ╨ñ∞ñ▐ñ╣íúñ╜ñ╖ñ╞├═ñ╬┴╚ñ╧ÑóÑ≤Ñ╤Ñ╡Ñ≤Ñ╔ (&) ñ╟╖δñ╨ñ∞ñ▐ñ╣íú
  472.       Ñ╣Ñ┌í╝Ñ╣íóÑóÑ≤Ñ╤Ñ╡Ñ≤Ñ╔íóÑñÑ│í╝Ñδñ╬ñΦñªñ╩╠╠┼▌ñ╩╩╕╗·ñ╧íó
  473.       ñ╜ñ∞ñΘñ¼╞░║εñ≥┬╠╠▄ñ╦ñ╖ñ╩ñññΦñªñ╦ñ╜ñ╬╩╕╗·ñ╦┴Ω┼÷ñ╣ñδ 16 ┐╩ñ╦╩╤┤╣ñ╡ñ∞ñ▐ñ╣íú
  474.       ┴┤Ñ╟í╝Ñ┐╩╕╗·╬≤ñ╧íó░╩▓╝ñ╬ñΦñªñ╦ñ╩ñΩñ▐ñ╣:
  475.       </p>
  476.  
  477.       <div class="example"><p><code>
  478.         name=Rich%20Bowen&city=Lexington&state=KY&sidekick=Squirrel%20Monkey
  479.       </code></p></div>
  480.  
  481.       <p>╗■í╣íóñ│ñ╬ñΦñªñ╩╩╕╗·╬≤ñ¼ URL
  482.       ñ╦╔╒▓├ñ╡ñ∞ñδñ╬ñ≥╕½ñδñ╟ñ╖ñτñªíúñ╜ñ╬╛∞╣τíóÑ╡í╝Ñ╨ñ╧
  483.       <code>QUERY_STRING</code> ñ╚ñññª┤─╢¡╩╤┐⌠ñ╦ñ╜ñ╬╩╕╗·╬≤ñ≥╞■ñ∞ñ▐ñ╣íúñ╜ñ∞ñ╧
  484.       <code>GET</code> ÑΩѻѿÑ╣Ñ╚ñ╚╕╞ñ╨ñ∞ñ▐ñ╣íú
  485.       HTML Ñ╒Ñ⌐í╝Ñαñ╟ñ╧íóÑ╟í╝Ñ┐ñ≥┼╧ñ╣ñ┐ñßñ╦ <code>GET</code> ñ╚
  486.       <code>POST</code> ñ╬ñ╔ñ┴ñΘñ≥╗╚═╤ñ╣ñδñ½ñ≥íó<code>FORM</code> Ñ┐Ñ░ñ╬
  487.       <code>METHOD</code> ┬░└¡ñ╬└▀─Ωñ╟╗╪─Ωñ╖ñ▐ñ╣íú</p>
  488.  
  489.       <p>CGI Ñ╫ÑφÑ░ÑΘÑαñ╧íóñ╜ñ╬╩╕╗·╬≤ñ≥╠≥ñ╦╬⌐ñ─╛≡╩≤ñ╦╩¼│Σñ╣ñδ└╒╟ññ¼ñóñΩñ▐ñ╣íú
  490.       ╣¼ñññ╦ñΓíóñ╜ñ╬Ñ╟í╝Ñ┐╜Φ═²ñ≥╜⌡ñ▒ñδÑΘÑñÑ╓ÑΘÑΩñΣÑΓÑ╕Ñσí╝Ñδñ¼┬╕║▀ñ╖ñ▐ñ╣íú
  491.       ñ│ñ∞ñΘñ╧íóCGI Ñ╫ÑφÑ░ÑΘÑαñ╬┬╛ñ╬╠╠ñ╟ñΓ╞▒══ñ╦╠≥ñ╦╬⌐ñ┴ñ▐ñ╣íú</p>
  492.     
  493.   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
  494. <div class="section">
  495. <h2><a name="libraries" id="libraries">CGI ÑΓÑ╕Ñσí╝Ñδ/ÑΘÑñÑ╓ÑΘÑΩ</a></h2>
  496.     
  497.  
  498.     <p>CGI Ñ╫ÑφÑ░ÑΘÑαñ≥╜±ñ»ñ╚ñ¡íó╠╠┼▌ñ╩╗┼╗÷ñ╬┬τ╔⌠╩¼ñ≥ñ╖ñ╞ñ»ñ∞ñδ
  499.     Ñ│í╝Ñ╔ÑΘÑñÑ╓ÑΘÑΩñ▐ñ┐ñ╧ÑΓÑ╕Ñσí╝Ñδñ≥╗╚ñªñ│ñ╚ñ≥╕í╞ññ╣ñ┘ñ¡ñ╟ñ╣íú
  500.     ñ│ñ∞ñ╧Ñ¿ÑΘí╝ñ≥╕║ñΘñ╖íó┴ßññ│½╚»ñ╦ñ─ñ╩ñ¼ñΩñ▐ñ╣íú</p>
  501.  
  502.     <p>Perl ñ╟ CGI Ñ╫ÑφÑ░ÑΘÑαñ≥╜±ñññ╞ñññδñ╩ñΘíóÑΓÑ╕Ñσí╝Ñδñ╧ <a href="http://www.cpan.org/">CPAN</a> ñ╟─≤╢íñ╡ñ∞ñ╞ñññ▐ñ╣íú
  503.     ñ│ñ╬╠▄┼¬ñ╬ñ┐ñßñ╬║╟ñΓ╔ß╡┌ñ╖ñ╞ñññδÑΓÑ╕Ñσí╝Ñδñ╧ <code>CGI.pm</code> ñ╟ñ╣íú
  504.     <code>CGI::Lite</code> ñΓ╕í╞ññ╖ñ▐ñ╖ñτñªíúñ│ñ∞ñ╧íóñ█ñ╚ñ≤ñ╔ñ╬Ñ╫ÑφÑ░ÑΘÑα
  505.     ñ╦ñ¬ñññ╞╔¼═╫ñ╚ñ╣ñδñ╣ñ┘ñ╞ñ╬╡í╟╜ñ╬║╟╛«Ñ╗Ñ├Ñ╚ñ╬╝┬┴⌡ñ╟ñ╣íú</p>
  506.  
  507.     <p>C ñ╟ CGI Ñ╫ÑφÑ░ÑΘÑαñ≥╜±ñññ╞ñññδñ╩ñΘíóñññφñññφñ╩
  508.     Ñ¬Ñ╫Ñ╖ÑτÑ≤ñ¼ñóñΩñ▐ñ╣íúñ│ñ∞ñΘñ╬╞Γñ╬░∞ñ─ñ╧ <a href="http://www.boutell.com/cgic/">http://www.boutell.com/cgic/</a>
  509.     ñ╟─≤╢íñ╡ñ∞ñ╞ñññδ <code>CGIC</code> ÑΘÑñÑ╓ÑΘÑΩñ╟ñ╣íú</p>
  510.   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
  511. <div class="section">
  512. <h2><a name="moreinfo" id="moreinfo">╣╣ñ╩ñδ╛≡╩≤</a></h2>
  513.     
  514.  
  515.     <p>CGI ñ╦┤╪ñ╣ñδ╛≡╩≤ñ╧ѪѺÑ╓ñ╟┐⌠┬┐ñ»─≤╢íñ╡ñ∞ñ╞ñññ▐ñ╣íúCGI
  516.     ñ╬╠Σ┬Ωñ╦ñ─ñññ╞ñ╧ Usenet ñ╬ <a href="news:comp.infosystems.www.authoring.cgi">comp.infosystems.www.authoring.cgi</a> ñ╟íó
  517.     ┬╛ñ╬ѵí╝Ñ╢ñ╚╧└╡─ñ╣ñδñ│ñ╚ñ¼ñ╟ñ¡ñ▐ñ╣íúHTML Writers Guide ñ╬
  518.     -servers Ñßí╝ÑΩÑ≤Ñ░ÑΩÑ╣Ñ╚ñ╧íóñóñ╩ñ┐ñ╬╝┴╠Σñ╦▓≤┼·ñ╖ñ╞ñ»ñ∞ñδ░╬┬τñ╩ÑΩÑ╜í╝Ñ╣ñ╟ñ╣íú
  519.     <a href="http://www.hwg.org/lists/hwg-servers/">http://www.hwg.org/lists/hwg-servers/</a>
  520.     ñ╟╣╣ñ╦┬┐ñ»ñ≥├╡ñ╖╜╨ñ╣ñ│ñ╚ñ¼ñ╟ñ¡ñ▐ñ╣íú</p>
  521.  
  522.     <p>ñ╜ñ╖ñ╞ñΓñ┴ñφñ≤íóñ¬ñ╜ñΘñ» CGI
  523.     Ñ╫ÑφÑ░ÑΘÑαñ╬╞░║εñ╦┤╪ñ╣ñδ╛▄║┘ñ╬┴┤ñ╞ñ¼╡¡╜╥ñ╡ñ∞ñ╞ñññδ
  524.     CGI ñ╬╗┼══ñ≥╞╔ñαñ┘ñ¡ñ╟ñ╣íúѬÑΩÑ╕Ñ╩ÑδÑ╨í╝Ñ╕ÑτÑ≤ñ≥
  525.     <a href="http://hoohoo.ncsa.uiuc.edu/cgi/interface.html">NCSA</a>
  526.     ñ╟íóÑóÑ├Ñ╫Ñ╟í╝Ñ╚ñ╡ñ∞ñ┐Ñ╔ÑΘÑ╒Ñ╚ñ≥
  527.     <a href="http://web.golux.com/coar/cgi/">Common Gateway Interface RFC
  528.     Ñ╫ÑφÑ╕ѺѻÑ╚</a>ñ╟╗▓╛╚ñ╣ñδñ│ñ╚ñ¼ñ╟ñ¡ñ▐ñ╣íú</p>
  529.  
  530.     <p>CGI ñ╬╠Σ┬Ωñ╦ñ─ñññ╞íó▓├ñ∩ñ├ñ╞ñññδÑßí╝ÑΩÑ≤Ñ░ÑΩÑ╣Ñ╚ñ▐ñ┐ñ╧Ñ╦Ñσí╝Ñ╣
  531.     Ñ░Ñδí╝Ñ╫ñ╦╝┴╠Σñ≥┴≈ñδñ╚ñ¡íó╡»ñ│ñ├ñ┐ñΓñ╬íó╡»ñ│ñ├ñ╞ñ█ñ╖ñññ│ñ╚íó
  532.     ╝┬║▌ñ╦╡»ñ│ñ├ñ┐ñ│ñ╚ñ¼ñ╔ñª░πñªñ½íó╗╚═╤ñ╖ñ╞ñññδÑ╡í╝Ñ╨íó
  533.     CGI Ñ╫ÑφÑ░ÑΘÑαñ≥╡¡╜╥ñ╖ñ╞ñññδ╕└╕∞ñ╦┤╪ñ╣ñδ╜╜╩¼ñ╩╛≡╩≤ñ╚íó
  534.     ▓─╟╜ñ╟ñóñ∞ñ╨╠Σ┬Ωñ╬Ñ│í╝Ñ╔ñ≥─≤╢íñ╣ñδñΦñªñ╦ñ╖ñ╞ñ»ñ└ñ╡ññíú
  535.     ñ╜ñªñ╣ñδñ│ñ╚ñ╟íó╠Σ┬Ωñ¼ñΦñΩ┤╓├▒ñ╦╕½ñ─ñ½ñδñΦñªñ╦ñ╩ñΩñ▐ñ╣íú</p>
  536.  
  537.     <p>Apache ñ╬Ñ╜í╝Ñ╣Ñ│í╝Ñ╔ñ╦ñ¬ñññ╞╠Σ┬Ωñ≥╚»╕½ñ╖ñ┐ñ│ñ╚ñ≥│╬┐«ñ╖ñ╞ñññ╩ññ╕┬ñΩíó
  538.     CGI ñ╬╠Σ┬Ωñ╦┤╪ñ╣ñδ╝┴╠Σñ≥ Apache
  539.     Ñ╨Ñ░Ñ╟í╝Ñ┐Ñ┘í╝Ñ╣ñ╦<strong>┴≈ñδñ┘ñ¡ñ╟ñ╩ññ</strong>
  540.     ñ│ñ╚ñ╦├φ╠▄ñ╖ñ╞ñ»ñ└ñ╡ññíú</p>
  541.   </div></div>
  542. <div class="bottomlang">
  543. <p><span>Available Languages: </span><a href="../en/howto/cgi.html" hreflang="en" rel="alternate" title="English"> en </a> |
  544. <a href="../ja/howto/cgi.html" title="Japanese"> ja </a> |
  545. <a href="../ko/howto/cgi.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
  546. </div><div id="footer">
  547. <p class="apache">Copyright 1995-2006 The Apache Software Foundation or its licensors, as applicable.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
  548. <p class="menu"><a href="../mod/">ÑΓÑ╕Ñσí╝Ñδ</a> | <a href="../mod/directives.html">Ñ╟ÑúÑ∞Ñ»Ñ╞ÑúÑ╓</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">═╤╕∞</a> | <a href="../sitemap.html">Ñ╡ÑñÑ╚Ñ▐Ñ├Ñ╫</a></p></div>
  549. </body></html>